From: Giovanni Campagna Date: Fri, 20 Mar 2015 19:30:57 +0000 (-0700) Subject: AppDisplay: use global settings object X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~1409 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=1f2e53dd153d938590933b622ce5ad2b44c4c9c8;p=gnome-shell.git AppDisplay: use global settings object We don't need a different GSettings object for each app or favorite item. While it practice it does not change much (AddMatch is still obviously sent out), it minimally reduces the overhead on changes, and makes for cleaner code. https://bugzilla.gnome.org/show_bug.cgi?id=746509 --- diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js index f83594693..c938e1f16 100644 --- a/js/ui/appDisplay.js +++ b/js/ui/appDisplay.js @@ -366,8 +366,6 @@ const AllView = new Lang.Class({ Extends: BaseAppView, _init: function() { - this._settings = new Gio.Settings({ schema_id: 'org.gnome.shell' }); - this.parent({ usePagination: true }, null); this._scrollView = new St.ScrollView({ style_class: 'all-apps', x_expand: true, @@ -525,7 +523,7 @@ const AllView = new Lang.Class({ // at least on single-monitor setups. // This also disables drag-to-launch on multi-monitor setups, // but we hope that is not used much. - let favoritesWritable = this._settings.is_writable('favorite-apps'); + let favoritesWritable = global.settings.is_writable('favorite-apps'); apps.forEach(Lang.bind(this, function(appId) { let app = appSys.lookup_app(appId); @@ -783,8 +781,6 @@ const FrequentView = new Lang.Class({ _init: function() { this.parent(null, { fillParent: true }); - this._settings = new Gio.Settings({ schema_id: 'org.gnome.shell' }); - this.actor = new St.Widget({ style_class: 'frequent-apps', layout_manager: new Clutter.BinLayout(), x_expand: true, y_expand: true }); @@ -827,7 +823,7 @@ const FrequentView = new Lang.Class({ // at least on single-monitor setups. // This also disables drag-to-launch on multi-monitor setups, // but we hope that is not used much. - let favoritesWritable = this._settings.is_writable('favorite-apps'); + let favoritesWritable = global.settings.is_writable('favorite-apps'); for (let i = 0; i < mostUsed.length; i++) { if (!mostUsed[i].get_app_info().should_show()) @@ -1804,8 +1800,6 @@ const AppIconMenu = new Lang.Class({ this.actor.add_style_class_name('app-well-menu'); - this._settings = new Gio.Settings({ schema_id: 'org.gnome.shell' }); - // Chain our visibility and lifecycle to that of the source source.actor.connect('notify::mapped', Lang.bind(this, function () { if (!source.actor.mapped) @@ -1867,7 +1861,7 @@ const AppIconMenu = new Lang.Class({ })); } - let canFavorite = this._settings.is_writable('favorite-apps'); + let canFavorite = global.settings.is_writable('favorite-apps'); if (canFavorite) { this._appendSeparator();